Call center support and documentation system

ABSTRACT

A call center support and documentation system is provided. The call center support and documentation system assists an agent of a call center in processing calls. Specifically, the system assists the agent in processing calls more quickly by providing, on a single display screen, all of the information to process a call (including the customer&#39;s information, troubleshooting steps, and documentation). The system also assists the agent in documenting calls in an efficient and standardized manner. Documentation, such as the customer information and troubleshooting steps for a call, may be automatically populated in a uniform manner so that the agent may update the documentation database.

REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional PatentApplication No. 60/678,268, filed May 5, 2005, the contents of which areincorporated by reference herein in its entirety.

BACKGROUND OF THE INVENTION

1. Technical Field

The invention relates to systems for processing calls to a call center.In particular, the invention relates to systems for processing and/ordocumenting incoming calls to the call center.

2. Related Art

Call centers are typically utilized to support a product or service fora business. The support may be in answering a customer's question or inreceiving information from the customer. For example, call centers maybe staffed by one or more agents to answer questions relating to thebusiness' product or service, such as setup or operation of the product.As another example, call centers may receive information from customersor potential customers, such as warranty information, complaints,credit-card activation, or the like.

The call center may receive a request from the customer, either in theform of an incoming telephone call, an e-mail, or some other electronicmessage. The agents who staff the call center may respond to the requestof the customer, such as by answering the telephone call, responding tothe e-mail, or the like. Thus, the call center may include interactingwith the customer via telephone, and may also include interacting withthe customer via e-mail, or other electronic means.

In processing the request of the customer, the call center may have twogoals: (1) responding to the request of the customer (such as answeringthe customer's questions and/or receiving information from thecustomer); and (2) documenting the call (such as documenting thequestion of the customer, the recommended solution provided thecustomer, etc.). The time it takes to process a call (such as respond tothe customer's request and/or document the call) is called the handletime.

One example of a business that may request call center services is anInternet Service Provider (ISP) wherein Narrow band (Dial up) and/orbroad band (Digital Subscriber Line) customers of the ISP may call thecall center to troubleshoot connectivity or related issues faced by themand the call center may handle these calls. Typically, agents in thecall center attempt to resolve the customer's issue with the help ofbackend knowledge bases that they have access to. Moreover, the agentsmay be required to document details of the customer contact, such as ona backend application of the client where customer information isstored. A call may last between 10-40 minutes. The average handle time(across all calls) may be approximately 20 minutes. This average handletime is merely an example, and may be longer or shorter.

It is not uncommon to have many agents, such as 1000 agents, handle alarge number of calls every month, such as 300,000 calls every month.One may wish to reduce the handle time of calls, thereby reducing theaverage handle time. There are a variety of activities which may resultin the length of handling of a call. One activity may be the time ittakes for the agent to diagnose the problem and determine the necessarysteps that need to be taken to resolve the problem. Another activitythat may contribute to the length of time to handle a call is theagent's documenting details of the customer contact on the backend.While there is a knowledge base to support diagnosing and determiningthe problem, even toggling between windows is time intensive leading tolonger handling of the call. Therefore, there is a need to reduce thelength of handling a call in a call center.

SUMMARY

In one embodiment, a method and system for call support anddocumentation is provided to reduce the handle time for a call. Themethod and system provide an agent working at a call center withinformation on the screen to process the call (including inputtingcustomer information, trouble shooting the call, and documenting thecall) so that the agent may process the call more quickly. In oneaspect, the method and system display information on the screen so thatthe agent need not toggle between windows in order to process the call.For example, the system and method present input form fields in a firstportion of the screen for the agent to input data regarding thecustomer. The input data may include information identifying thecustomer and information identifying the customer's problem. Based onthe data input, a background program may determine trouble shootingsteps to diagnose and/or solve the customer's problem. Part or all ofthe trouble shooting steps may be displayed in a second portion of thescreen. For example, the trouble shooting steps may be displayed in alist in the second portion of the screen, so that the agent may easilydetermine which steps to perform. Further, with the first and secondportions of the screen simultaneously visible, the agent may process thecall more quickly and without the need to toggle between differentwindows.

In another aspect of the invention, the method and system provide theagent with a third portion of the screen that documents the call. Thebackground program may display in the third portion of the screen whatdata has been input and what actions have been performed on the call.Specifically, the background program may display in the third portionthe data input, such as the customer information and the customer'sproblem. The background program may also display the steps taken todiagnose or solve the problem. For example, when the agent indicatesthat a specific trouble shooting step listed in the second portion ofthe screen has been performed, the background program may document inthe third portion of the screen the specific trouble shooting stepperformed, and may also remove the specific trouble shooting step fromthe second portion of the screen. In this manner, the background programmay automatically generate the documentation based on the actions of theagent, so that the documentation is more quickly and more uniformlygenerated and more uniformly generated. Further, the third portion ofthe screen, along with the first and second portions, may besimultaneously visible so that the agent can process the call withouthaving to toggle between different windows.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention can be better understood with reference to the followingdrawings and description. The components in the figures are notnecessarily to scale, emphasis instead being placed upon illustratingthe principles of the invention. Moreover, in the figures, likereferenced numerals designate corresponding parts throughout thedifferent views.

FIG. 1 is a block diagram of one example of a configuration of a callcenter including multiple Call Center Support and Documentation Systemsused by agents.

FIG. 2 is an expanded block diagram of the Call Center Support andDocumentation System depicted in FIG. 1.

FIG. 3 is an example of a flow chart for processing an incoming call forthe Call Center Support and Documentation System as depicted in FIG. 2.

FIG. 4 is an example of an initial display screen for a computeroperating the Call Center Support and Documentation System as depictedin FIG. 2.

FIG. 5 is an example of a portion of the display screen highlighting theBASIC INFORMATION for input by the agent of the Call Center.

FIG. 6 is an example of a portion of the display screen highlighting thereason for call/error message for input by the agent of the Call Centerand the trouble shooting steps.

FIG. 7 is an example of a portion of the display screen highlighting theagent executing one of the trouble shooting steps and the correspondingdocumentation populated in another part of the screen.

FIG. 8 is an example of a portion of the display screen highlighting thedocumentation section that may be used to document the interaction ofthe agent with the customer.

FIGS. 9A-W are an example of a table that may be used to generate thetrouble shooting steps in the portion of the display screen of FIG. 6.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

By way of overview, the preferred embodiments described below relate toa Call Center Support and Documentation system and method. In a callcenter, the Call Center Support and Documentation system and method maybe used to better support agents in processing call received to the callcenter (such as assisting the agent in diagnosing a problem that acustomer may have or in obtaining information from the customer), andmay be used to better document a call. In this manner, the system andmethod may reduce the handle time of a call, and may more quickly,efficiently, and/or uniformly document the call. Thus, the system andmethod may achieve any one, some, or all of the following: reducedocumentation time following a customer contact; reduce time spent intoggling between multiple windows; increase consistency in thetroubleshooting process (between agents and period of time); reduce timeto train new agents of the Call Center; simplify the troubleshootingprocess; and standardize documentation across multiple agents.

Turning to the drawings, FIG. 1 shows a block diagram of oneconfiguration of a call center 100. The call center 100 may include oneor more Call Center Support and Documentation system 110. As shown inFIG. 1, the call center includes systems A-Z. One or more system 110 maybe used. Each agent in the call center 100 may be assigned a system 110in order to process and/or document a call. In order to route calls tothe agents, the call center 100 may include a call router 120. The callrouter may route the calls to any one of the systems 110. Further,customers 140 may electronically communicate with the call center 100 inany one of several ways. For example, the customers 130 may telephonethe call center 100 via a telephone system 130 (such as a wired,wireless, or wired and wireless telephone system), may send an e-mail tothe call center, or may send a webcast request to the call center.

FIG. 2 is an expanded block diagram for the Call Center Support andDocumentation system 110. The system 110 may comprise a general purposecomputing device, including a processing unit 222, a system memory 220,and a system bus 230, that couples various system components includingthe system memory 220 to the processing unit 222. The processing unit222 may perform arithmetic, logic and/or control operations by accessingsystem memory 220. The system memory 220 may store information and/orinstructions for use in combination with processing unit 222. The systemmemory 220 may include volatile and non-volatile memory, such as randomaccess memory (RAM) 225 and read only memory (ROM) 229. A basicinput/output system (BIOS) containing the basic routines that helps totransfer information between elements within the computer device, suchas during start-up, may be stored in ROM 229. The system bus 230 may beany of several types of bus structures including a memory bus or memorycontroller, a peripheral bus, and a local bus using any of a variety ofbus architectures.

The system 110 may further include a hard disk drive 232 for readingfrom and writing to a hard disk (not shown), and an external disk drive234 for reading from or writing to a removable external disk 235. Theremovable disk may be a magnetic disk for a magnetic disk driver or anoptical disk such as a CD ROM for an optical disk drive. The hard diskdrive 232 and external disk drive 235 may be connected to the system bus230 by a hard disk drive interface 231 and an external disk driveinterface 233, respectively. The drives and their associatedcomputer-readable media provide nonvolatile storage of computer readableinstructions, data structures, program modules and other data for thesystem 110. Although the exemplary environment described herein employsa hard disk and an external disk 235, it should be appreciated by thoseskilled in the art that other types of computer readable media which canstore data that is accessible by a computer, such as magnetic cassettes,flash memory cards, random access memories, read only memories, and thelike, may also be used in the exemplary operating environment.

A number of program modules may be stored on the hard disk, externaldisk 235, ROM 229 or RAM 225, including one or more application programs227, other program modules (not shown), an operating system 226, andprogram data (not shown). One such application program may comprise thefunctionality of presenting various portions of the graphical userinterface, such as the “BASIC INFORMATION,” “Trouble Shooting Steps,”and “CRM Documentation” portions of the graphical user interface, asshown in FIG. 4. The software for presenting the portions of thegraphical user interface may comprise Visual Basic 6.0. Other programsmay also be used. Another application program may include the logic treedepicted in FIGS. 9A-W. In this manner, the logic tree may be residentwithin system 110. Alternatively, the logic tree depicted in FIGS. 9A-Wmay be resident in an external database 244, accessible by system 110via a network I/O 240 through line 242. The external database may bepart of a back end application, such as an SQL server with MS Access. Inthis manner, each of the systems 110 may access the logic tree residentin external database 244. The connection 242 between the system 110 andthe external database 244 may include a local area network (LAN) or awide area network (WAN). Such networking environments are commonplace inoffices, enterprise-wide computer networks, intranets and the Internet.As shown in FIG. 2, the call router 120 may further communicate via thenetwork I/O 240 in order to route a call to the system 110 for the agentto communicate with customer 130.

The agent may enter the input data, such as the data for the “BASICINFORMATION” portion of the graphical user interface into the system 110through input devices such as mouse 237 and keyboard 238. Other inputdevices (not shown) may include a microphone (or other sensors),joystick, game pad, scanner, or the like. These and other input devicesmay be connected to the processing unit 222 through a serial portinterface 236 that is coupled to the system bus 230, or may be collectedby other interfaces. A monitor 224, or other type of display device, mayserve as the graphical user interface and may also be connected to thesystem bus 230 via an interface, such as a video input/output 223. Inaddition to the monitor 224, computing environment 210 may include otherperipheral output devices (not shown), such as speakers or other audibleoutput. Further, the external database 244 may be used to storedocumentation of the call, such as the CRM application, as discussed inmore detail below.

Referring to FIGS. 3A-B, there is shown an example of a flow chart 300for processing an incoming call for the Call Center Support andDocumentation System as depicted in FIG. 2. As shown at block 302, it isdetermined whether an incoming call has been routed to system 110. If acall has been routed, information about the customer may be populated ina part of the display screen, as shown at block 304. FIG. 4 shows anexample of a display without any information populated. The displayincludes various sections relating to the call, including sectionsrelating to inputting data, to resolving the call, to documenting thecall, and to providing assistance to the agent. For example, the displaymay include sections for inputting basic information for the customer(see, for example, “BASIC INFORMATION”); for inputting the reasons forthe call (see, for example, “Reason for Call” and “Error Message); forresolving the reasons for the call (see, for example, “Trouble ShootingSteps”, “Tools”, etc.); and for providing background information to theagent (see, for example, “References”). With all of the informationshown on the screen in FIG. 4, there is less of a need for the agent totoggle between various windows when processing the call.

The population of the information on the screen may be manual, such asthe agent entering the customer's name, address, or other identifier.Or, the population of the screen may be automatic, such as a DNS numberautomatically obtained from the caller. An example of the portion of thescreen that may be populated by the agent is shown in FIG. 5, whichshows at block 502 under the heading BASIC INFORMATION. Using thecustomer information, it may be determined whether the customer isregistered, as shown at block 306 If the customer is not registered, thecustomer may then be registered, as shown at block 308. If the customeris registered, information associated with the customer may be accessed,as shown at block 310. The customer information may comprise a profilefor the customer, such as including the customer's name, user ID, etc.After the customer information, such as the customer's profile isaccessed, the customer information may be displayed on the screen. Forexample, the customer information may be displayed on a lower portion ofthe screen so that the agent may review the customer information ifnecessary, without having to toggle between windows.

In addition to customer identifier information, additional informationregarding the service or product may be shown on the screen, as shown atblock 312. In the example of call center for an Internet ServiceProvider, the additional information may be included in the BASICINFORMATION, such as the domain name (as shown in FIG. 5, the domainname is listed as sbcglobal.net), the telephone number of the incomingcall (in FIG. 5, termed the BTN), the operating system (termed O.S.),the mode (such as 1-line, 2-line, or mobile), etc. The listed BASICINFORMATION is for illustrative purposes only.

When entering any one, some, or all of the BASIC INFORMATION, a separateportion of the screen may display information relating to the BASICINFORMATION entered. Specifically, a screen pop up may occur in order toassist the agent contemporaneously with entering the customerinformation. For example, when entering the domain name, such assbcglobal.net, a portion of the screen may display guidelines forhanding the call as dictated by the particular Internet ServiceProvider. As another example, after the telephone number of the incomingcall is entered, a portion of the screen may display informationrelating to the access number (such as (1) a listing of access numbersand corresponding information as to whether the number is working; or(2) a listing of access numbers not working). FIG. 5 shows an example ofa screen pop relating to access numbers for connectivity to theInternet. In this manner, the agent may be presented with information onthe same display screen without having to toggle to any other windows.

One, some, or all of the BASIC INFORMATION may be manually entered bythe agent. For example, the agent may ask the customer what operatingsystem the customer is using. Alternatively, one, some, or all of theBASIC INFORMATION may be automatically entered by the agent. Forexample, the customer profile may include information regarding thedomain used. As shown in FIG. 6, when information is populated in onepart of the screen, another part of the screen relating to documentationof the call may automatically be populated. For example, as shown atblock 608 of FIG. 6, the information entered in the BASIC INFORMATIONportion of the screen is populated in the CRM documentation of thescreen. As discussed in more detail below, this automatic population ofthe documentation for the call may reduce the handle time and maystandardize the documentation of calls.

After the additional information is entered on the screen, the agent mayalso enter the reason(s) for the call or the problem encountered, asshown at block 314. The reason(s) for the call may include the problemencountered by the customer. As shown in FIG. 6, there are severalreasons from which the agent may choose. The reasons may be supplementedby specific error messages provided by the electronic device. Typically,when an electronic device is malfunctioning, it provides a specificerror message to aid in diagnosing the problem. In the example of thecall center for an Internet Service Provider, the agent may enter thereason for the call and the error message, as highlighted in block 602of FIG. 6.

Based on the reason(s) for the call or the problem encountered, arecommendation to diagnose and/or solve the problem, such as troubleshooting steps, may be determined. Specifically, once the agent capturesone, some or all the above details, the applicable troubleshooting stepsmay be populated in the area highlighted by block 604 in FIG. 6(“Trouble Shooting Steps”). Populating the troubleshooting steps may beperformed by a background program, which may perform one or more of thefollowing functions: (1) monitoring one, some, or all of the inputsprovided by the agent (such as the inputs shown in the “BASICINFORMATION”, “Reason for Call”, and/or “Error Message” portions of thescreen in FIG. 6); (2) determining applicable troubleshooting stepsusing a decision a decision tree (such as the troubleshooting stepsdisclosed in FIGS. 9A-W); and (3) displaying the applicabletroubleshooting steps (such as in the area highlighted by block 604 inFIG. 6). Once the background program determines troubleshooting stepsbased on the input data, the background program may automaticallydisplay the troubleshooting steps without any explicit input from theagent. Specifically, the background program need only rely on the inputdata from the agent, and does not require the user to explicitly enter acommand requesting troubleshooting steps.

The background program may display the applicable trouble shooting stepsin a variety of ways. For example, the background program may displaythe applicable troubleshooting steps only after all of the inputs areprovided by the agent. As another example, the background program maymonitor the inputs provided by the agent, dynamically determiningwhether there are applicable troubleshooting steps based on the decisiontree, even if all of the inputs have not been entered. If the backgroundprogram determines applicable troubleshooting steps, the applicabletroubleshooting steps may be displayed immediately even if all of theinputs have not been entered.

After the trouble shooting steps are determined, they may be displayedin a section of the display screen, as shown at block 316. As shown inFIG. 6, the trouble shooting steps may be displayed in portion of thescreen without the need for the agent to toggle between various windows.Specifically, after the problem is diagnosed, the trouble shooting stepsmay be displayed on the same screen as the agent is currently viewing,thus accelerating presentation of the trouble shooting steps to theagent and potentially reduce the handle time of the call.

FIG. 6 shows the “BASIC INFORMATION”, “Reason for Call”, “Error Message”and the “Trouble Shooting Steps” portion of the screen are part of thesame window. Alternatively, the “BASIC INFORMATION”, “Reason for Call”,and/or “Error Message” portions of the screen and the “Trouble ShootingSteps” portion of the screen may be in separate windows, with each ofthe portions shown in their entirety. Therefore, the agent does not needto toggle between different windows (such as from an input window to asuggested trouble shooting steps window) to obtain the trouble shootinginformation. Moreover, the agent does not need to prompt the backgroundprogram to display the applicable troubleshooting steps, such as byhitting a button “show troubleshooting steps.” Rather, thetroubleshooting steps are displayed automatically upon entry ofsufficient information in the screen.

In the example of trouble shooting for an internet service provider, thefollowing types of issues may be covered in the Call Center Support andDocumentation system 110 when providing troubleshooting anddocumentation services: authentication related; cannot connect withsync; cannot connect without sync; browsing issues (after beingconnected); e-mail (cannot send/receive); and phone page related. Theseproblems may contribute to about 70% of the calls that the centerreceives in the context of providing troubleshooting and documentationservices for an ISP.

FIG. 6 is presented merely for illustrative purposes. The troubleshooting steps may be presented in any portion of the screen. Further,one, some, or all of the trouble shooting steps may be immediatelypresented to the agent on the screen after the trouble shooting stepsare determined. As shown in FIG. 6, all of the trouble shooting stepsare presented on the display. In the event that there are manytroubleshooting steps (such as too many to display on the screen), oneor some of the trouble shooting steps, but less than all, may bepresented on the current display of the agent. In this manner, the agentmay still be able to see at least one or more trouble shooting stepsimmediately without toggling between windows. As the trouble shootingsteps are executed, the display screen may present additional troubleshooting steps (such as scrolling the trouble shooting steps upward).

The agent may perform the trouble shooting step(s) and may indicate tothe system what step(s) have been performed, as shown at block 318. Toindicate that the trouble shooting steps have been performed, the agentmay use the mouse 237 and/or keyboard 238. For example, the agent mayuse the mouse 237 to click on box 606. When the agent indicates that oneof the trouble shooting steps has been performed, the indicated troubleshooting step may be removed from the portion of the screen thatdisplays the trouble shooting steps, and may also display performedtrouble shooting steps in the documentation portion of the screen, asshown at block 320. For example, if the operator has checked box next tothe trouble shooting step “Check The User name and Password,” thattrouble shooting step is removed from the list of trouble shootingsteps, and is added to the documentation portion of the screen. This isshown in FIG. 7. Populating the documentation may be performed by thebackground program, discussed above, or may be performed by a separateprogram. Removing the step from the list of trouble shooting stepsenables the operator to focus on the remaining trouble shooting steps.Further, adding the step to the documentation portion of the screen(block 608) reduces the time for documentation while still allowing theagent to view what trouble shooting steps have been performed.

The operator may perform all of the recommended trouble shooting steps,and indicate on the screen via the mouse 237 or keyboard 238 that theyhave been performed. In this instance, all of the troubleshooting stepsare removed from one portion of the screen (as shown in FIG. 8, theTrouble Shooting Steps 604 portion of the screen, and may be displayedin the documentation portion of the screen 608.

Further, the agent may perform diagnostics steps, in addition to therecommended trouble shooting steps, to aid in resolution of the clientproblem, as shown at block 322. In the Internet Service Providerexample, the agent may determine whether there is an outage of anyportion of the system. Specifically, the agent may check whether thereis a Network Command Center (NCC) outage. To check, the agent may simplyclick on the “Check NCC Outage” link that is on the main portion of thescreen. Again, since the screen presents the link on the display asshown in FIG. 8, the agent need not toggle to a different screen toaccess the diagnostic tool. Further, once the agent clicks on the link,a part of the screen may provide information as to network outages. Oncemore, the agent need not toggle between different windows since theinformation is presented on the current screen. Once the agent performsthe additional diagnostic steps (such as determining the NCC status),the agent may indicate it on the screen (such as “Outage” or “NoOutage”), as shown at block 324. The agent may also perform otherdiagnostic steps, such as verify information regarding the customer'saccount. The diagnostic tool may be accessed by the “Universal SyncTool” link as shown in FIG. 8. Again, the agent need not toggle betweendifferent screens to access the diagnostic tool.

The background program may also populate the CRM documentation portionof the screen with the additional diagnostic steps performed, as shownat block 326. For example, the subsection “Details” under the CRMdocumentation portion of the screen indicates the result of the NCCanalysis (as shown in FIG. 8, NCC=No Outage).

The agent may also indicate the result of the call, such as whether thereason for the call has been resolved or not been resolved, as shown atblock 328. As shown in FIG. 8, the agent may indicate in the subsectionunder “Independent Test Resolution” under the “CRM documentation”portion of the screen whether the problem has been “Resolved” or“Escalated”. When the agent indicates whether the problem has beenresolved or not, the documentation portion of the screen documents theindication, as shown at block 330. For example, the agent may indicatethat the customer issue has been resolved by clicking on the “Resolved”tab. The background program may populate the documentation section with“Customer Issue Resolved” in the subsection under “Independent TestResolution,” as shown in FIG. 8.

Finally, the documentation displayed in the portion of the screenentitled “CRM documentation” may be copied to a database, as shown atblock 332. Specifically, this documentation may be copy-pasted into theclient's backend application where customer information is stored. Asshown in FIG. 8, there are tabs entitled “Copy” in the CRM Documentationportion of the screen. The agent may copy-paste a portion of the data inthe CRM Documentation to the client's backend application by clicking ofthe copy tab. Alternatively, if the agent has access to the backendapplication, the documentation may be sent to the client's backendapplication without a separate act of clicking of the copy tab may beunnecessary

FIG. 8 illustrates different areas of the screen, such as the “Reasonfor Call,” “Trouble Shooting Steps,” and “CRM Documentation” portions ofthe screen. The amount of the screen that the different areas occupy maybe static or may be dynamic. For example, the amount of the screen areafor the “Reason for Call,” “Trouble Shooting Steps,” and “CRMDocumentation” may be constant, as shown in FIG. 6. Or, the amount ofthe screen for any of the different areas may be dynamic. If dynamic,the amount of screen area may be determined in a variety of ways. Oneway is to vary the amount of screen area during the course of handling atroubleshooting call. For example, the area for agent input may occupy abigger portion of the screen during a first portion of thetroubleshooting call when the agent is inputting the data, and aftersufficient data is entered (such as one, some or all of the fields shownin “Reason for Call”), the area for agent input is reduced. Similarly,during the troubleshooting phase of the phone call, the size of the“Trouble Shooting Steps” portion of the screen may be increased. Anotherway to determine the amount of screen area is to vary the amount ofscreen area based on the information presented. For example, if theamount of troubleshooting information is large (e.g., if there is toomuch information to display in the screen portion for “Issue SpecificTroubleshooting Steps”) that portion of the display may be increased toaccommodate the additional information. In this manner, the agent maysee all of the relevant information on a single screen without togglingbetween various windows.

While this invention has been shown and described in connection with thepreferred embodiments, it is apparent that certain changes andmodifications in addition to those mentioned above may be made from thebasic features of this invention. In addition, there are many differenttypes of computer software and hardware that may be utilized inpracticing the invention, and the invention is not limited to theexamples described above. The invention was described with reference toacts and symbolic representations of operations that are performed byone or more electronic devices. As such, it will be understood that suchacts and operations include the manipulation by the processing unit ofthe electronic device of electrical signals representing data in astructured form. This manipulation transforms the data or maintains itat locations in the memory system of the electronic device, whichreconfigures or otherwise alters the operation of the electronic devicein a manner well understood by those skilled in the art. The datastructures where data is maintained are physical locations of the memorythat have particular properties defined by the format of the data. Whilethe invention is described in the foregoing context, it is not meant tobe limiting, as those of skill in the art will appreciate that the actsand operations described may also be implemented in hardware.Accordingly, it is the intention of the Applicants to protect allvariations and modification within the valid scope of the presentinvention. It is intended that the invention be defined by the followingclaims, including all equivalents.

The flow chart in FIGS. 3A-B may be encoded in a signal bearing medium,a computer readable medium such as a memory, programmed within a devicesuch as on one or more integrated circuits, or processed by a controlleror a computer. If the methods are performed by software, the softwaremay reside in a memory resident to or interfaced to the Call CenterSupport and Documentation system 100, a communication interface, or anyother type of non-volatile or volatile memory. The memory may include anordered listing of executable instructions for implementing logicalfunctions. A logical function may be implemented through digitalcircuitry, through source code, through analog circuitry, or through ananalog source such through an analog electrical, audio, or video signal.The software may be embodied in any computer-readable or signal-bearingmedium, for use by, or in connection with an instruction executablesystem, apparatus, or device. Such a system may include a computer-basedsystem, a processor-containing system, or another system that mayselectively fetch instructions from an instruction executable system,apparatus, or device that may also execute instructions.

A “computer-readable medium,” “machine-readable medium,”“propagated-signal” medium, and/or “signal-bearing medium” may compriseany means that contains, stores, communicates, propagates, or transportssoftware for use by or in connection with an instruction executablesystem, apparatus, or device. The machine-readable medium mayselectively be, but not limited to, an electronic, magnetic, optical,electromagnetic, infrared, or semiconductor system, apparatus, device,or propagation medium. A non-exhaustive list of examples of amachine-readable medium would include: an electrical connection“electronic” having one or more wires, a portable magnetic or opticaldisk, a volatile memory such as a Random Access Memory “RAM”(electronic), a Read-Only Memory “ROM” (electronic), an ErasableProgrammable Read-Only Memory (EPROM or Flash memory) (electronic), oran optical fiber (optical). A machine-readable medium may also include atangible medium upon which software is printed, as the software may beelectronically stored as an image or in another format (e.g., through anoptical scan), then compiled, and/or interpreted or otherwise processed.The processed medium may then be stored in a computer and/or machinememory.

While various embodiments of the invention have been described, it willbe apparent to those of ordinary skill in the art that many moreembodiments and implementations are possible within the scope of theinvention. Accordingly, the invention is not to be restricted except inlight of the attached claims and their equivalents.

1. A system for presenting data to an agent on a graphical userinterface of a computer system, the data comprising input data totroubleshoot a problem and troubleshooting steps to solve the problem,the system comprising: the graphical user interface comprising a displaydevice; and a processor in communication with the graphical userinterface and configured to: present input form fields in a firstportion of the graphical user interface for the agent to input the inputdata; present the input data in the first portion of the graphical userinterface; automatically determine based on the input data thetroubleshooting steps to solve the problem using a software programoperating in a background of the computer system; present at least someof the troubleshooting steps along with respective check boxes displayednext to the presented troubleshooting steps in a second portion of thegraphical user interface; determine documentation to present based ontroubleshooting the problem, at least a part of the documentation beingduplicative of the input data presented in the first portion of thegraphical user interface or the troubleshooting steps in the secondportion of the graphical user interface, the documentation comprising adescription section and at least one of a summary section and anindependent test resolution section; present the documentation in athird portion of the graphical user interface, receive an input from theagent indicating to the system that a troubleshooting step of thepresented troubleshooting steps has been performed, the input checkingthe check box next to the trouble shooting step that has been performed;and in response to and only after receiving the input, adding thetroubleshooting step that has been performed to the description sectionof the documentation so that the troubleshooting step that has beenperformed is simultaneously visible in the second portion and the thirdportion of the graphical user interface, wherein the first, second, andthird portions of the graphical user interface are simultaneouslyvisible in their entirety.
 2. The system of claim 1, wherein the firstand second portions of the graphical user interface are in a singlewindow.
 3. The system of claim 1, wherein all of the troubleshootingsteps are presented in the second portion of the graphical userinterface.
 4. The system of claim 1, wherein the background programcomprises a logic tree.
 5. The system of claim 1, wherein the processoris further configured to indicate that at least one specifictroubleshooting step has been performed; and wherein presentingdocumentation in the third portion of the screen comprises documentingthat the specific troubleshooting step has been performed.
 6. The systemof claim 5, wherein the processor is further configured to remove thespecific troubleshooting step from the second portion of the graphicaluser interface after it is indicated that the specific troubleshootingstep has been performed.
 7. The system of claim 1, wherein the first,second and third portions of the graphical user interface are in asingle window.
 8. The system of claim 1, wherein the troubleshootingsteps are presented without requiring the agent to toggle between aninput data window and a troubleshooting steps window.
 9. The system ofclaim 1, wherein the problem comprises connectivity to an internetservice provider.
 10. A method of presenting data to an agent on agraphical user interface of a computer system, the data comprising inputdata to troubleshoot a problem and troubleshooting steps to solve theproblem, the method comprising: presenting input form fields in a firstportion of the graphical user interface for the agent to input the inputdata; presenting the input data in the first portion of the graphicaluser interface; automatically determining based on the input data thetroubleshooting steps to solve the problem using a software programoperating in a background of the computer system; presenting at leastsome of the troubleshooting steps along with respective check boxesdisplayed next to the presented troubleshooting steps in a secondportion of the graphical user interface; determining documentation topresent based on troubleshooting the problem, at least a part of thedocumentation being duplicative of the input data presented in the firstportion of the graphical user interface or the troubleshooting steps inthe second portion of the graphical user interface, the documentationcomprising a description section and at least one of a summary sectionand an independent test resolution section; presenting the documentationin a third portion of the graphical user interface, receiving an inputfrom the agent indicating to the computer system that a troubleshootingstep of the presented troubleshooting steps has been performed, theinput checking the check box next to the trouble shooting step that hasbeen performed; and in response to and only after receiving the input,adding the troubleshooting step that has been performed to thedescription section of the documentation so that the troubleshootingstep that has been performed is simultaneously visible in the secondportion and the third portion of the graphical user interface, whereinthe first, second, and third portions of the graphical user interfaceare simultaneously visible in their entirety.
 11. The method of claim10, wherein the first and second portions of the graphical userinterface are in a single window.
 12. The method of claim 10, whereinall of the troubleshooting steps are presented in the second portion ofthe graphical user interface.
 13. The method of claim 10, wherein thebackground program comprises a logic tree.
 14. The method of claim 10,further comprising indicating that at least one specific troubleshootingstep has been performed; and wherein presenting documentation in thethird portion of the screen comprises documenting that the specifictroubleshooting step has been performed.
 15. The method of claim 14,further comprising removing the specific troubleshooting step from thesecond portion of the graphical user interface after it is indicatedthat the specific troubleshooting step has been performed.
 16. Themethod of claim 10, wherein the first, second and third portions of thegraphical user interface are in a single window.
 17. The method of claim10, wherein the troubleshooting steps are presented without requiringthe agent to toggle between an input data window and a troubleshootingsteps window.
 18. The method of claim 10, wherein the problem comprisesconnectivity to an internet service provider.
 19. The system of claim 1,wherein the documentation to present is duplicative of the input datapresented in the first portion of the graphical user interface and thetroubleshooting steps in the second portion of the graphical userinterface.
 20. The system of claim 19, wherein at least a part of thedocumentation duplicated in the third portion comprises informationinput by the agent and displayed in the first portion.
 21. The system ofclaim 1, wherein the documentation comprises the description section,the summary section and the independent test resolution section.
 22. Themethod of claim 10, wherein the documentation comprises the descriptionsection, the summary section and the independent test resolutionsection.